OPAL_GCC_INLINE_ASSIGN='"mov %0, #0" : "=&r"(ret)'
;;
- armv7*|arm-*-linux-gnueabihf)
+ armv7*)
opal_cv_asm_arch="ARM"
OPAL_ASM_SUPPORT_64BIT=1
OPAL_ASM_ARM_VERSION=7
OPAL_GCC_INLINE_ASSIGN='"mov %0, #0" : "=&r"(ret)'
;;
- armv6*)
+ armv6*|arm-*-linux-gnueabihf)
opal_cv_asm_arch="ARM"
OPAL_ASM_SUPPORT_64BIT=0
OPAL_ASM_ARM_VERSION=6
- CCASFLAGS="$CCASFLAGS -march=armv7-a"
AC_DEFINE_UNQUOTED([OPAL_ASM_ARM_VERSION], [$OPAL_ASM_ARM_VERSION],
[What ARM assembly version to use])
OPAL_GCC_INLINE_ASSIGN='"mov %0, #0" : "=&r"(ret)'
ALIGN(4)
START_FUNC(opal_atomic_mb)
- dmb
+ MCR p15, 0, r0, c7, c10, 5
bx lr
END_FUNC(opal_atomic_mb)
START_FUNC(opal_atomic_rmb)
- dmb
+ MCR p15, 0, r0, c7, c10, 5
bx lr
END_FUNC(opal_atomic_rmb)
START_FUNC(opal_atomic_wmb)
- dmb
+ MCR p15, 0, r0, c7, c10, 5
bx lr
END_FUNC(opal_atomic_wmb)
strex r12, r2, [r0]
cmp r12, #0
bne REFLSYM(3)
- dmb
+ MCR p15, 0, r0, c7, c10, 5
mov r0, #1
LSYM(4)
movne r0, #0
ldrex r3, [r0]
cmp r1, r3
bne REFLSYM(6)
- dmb
+ MCR p15, 0, r0, c7, c10, 5
strex r12, r2, [r0]
cmp r12, #0
bne REFLSYM(4)
strexd r1, r6, r7, [r0]
cmp r1, #0
bne REFLSYM(9)
- dmb
+ MCR p15, 0, r0, c7, c10, 5
mov r0, #1
LSYM(10)
movne r0, #0
it eq
cmpeq r5, r3
bne REFLSYM(12)
- dmb
+ MCR p15, 0, r0, c7, c10, 5
strexd r1, r6, r7, [r0]
cmp r1, #0
bne REFLSYM(11)